package roledto

import (
	"github.com/gogf/gf/v2/frame/g"
	"time"
	"xr-game-server/core/httpserver"
)

type PageRoleReq struct {
	g.Meta `path:"/pageRole" method:"post" summary:"分页获取角色" tags:"角色"`
	httpserver.CMSQueryReq
	StartTime *time.Time `json:"startTime"`
	EndTime   *time.Time `json:"endTime"`
	ServerId  *uint64    `json:"serverId"`
	RoleId    *uint64    `json:"roleId"`
}

type PageRoleDto struct {
	ServerId     string `json:"serverId"`
	Nick         string `json:"nick"`
	AccountId    string `json:"accountId"`
	Exp          string `json:"exp"`
	Level        string `json:"level"`
	RoleId       string `json:"roleId"`
	ServerName   string `json:"serverName"`
	ZoneName     string `json:"zoneName"`
	ZoneId       string `json:"zoneId"`
	CreatedAt    string `json:"createAt"`
	OpenId       string `json:"openId"`
	IP           string `json:"ip"`
	Channel      uint   `json:"channel"`
	Ban          bool   `json:"ban"`
	BanTime      string `json:"banTime"`
	BanApplyTime string `json:"banApplyTime"`
}

func NewPageRoleDto() *PageRoleDto {
	return new(PageRoleDto)
}

func (p *PageRoleDto) AddTimeSpecial() {
	//加特殊标记,变成字符串,防止前端解析时间
	if p.CreatedAt != "" {
		p.CreatedAt = p.CreatedAt + " "
	}
	if p.BanTime != "" {
		p.BanTime = p.BanTime + " "
	}
	if p.BanApplyTime != "" {
		p.BanApplyTime = p.BanApplyTime + " "
	}
}
